home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Tampa Bay Amiga Group / TBAG - Tampa Bay Amiga Group's Disk of the Month #77 (1993)(Merlin's Software - Amiganuts United)(PD).zip / TBAG - Tampa Bay Amiga Group's Disk of the Month #77 (1993)(Merlin's Software - Amiganuts United)(PD).adf / Docs / Model4D.docs < prev    next >
Text File  |  1993-01-03  |  48KB  |  1,249 lines

  1. MODEL4D USER-MANUAL
  2.  
  3. CONTENTS
  4.  
  5. 1. Getting started
  6.  
  7.         1.1 Hardware requirements
  8.         1.2 Software requirements
  9.         1.3 Running Model4D
  10.  
  11. 2. What is Model4D?
  12.  
  13.         2.1 What can it do?
  14.         2.2 How does it do it?
  15.         2.3 The view modes
  16.         2.4 The 3D cursor
  17.         2.5 Messages
  18.  
  19. 3. Menus
  20.  
  21.         3.1 How to use Amiga menus
  22.  
  23.                 2.1.1 Mouse selection
  24.                 2.1.2 Keyboard short-cuts
  25.  
  26.         3.2 Model4D menus
  27.  
  28.                 3.2.1 Project menu
  29.                 3.2.2 Object menu
  30.                 3.2.3 Animation menu
  31.                 3.2.4 Tool menu
  32.                 3.2.5 Preferences menu
  33.  
  34. 4. Edit panel
  35.  
  36. 5. Hierarchy window
  37.  
  38. 6. Palette editor
  39.  
  40. 7. Animation panel
  41.  
  42. 8. Appendices
  43.  
  44.         8.1 Amiga interface usage
  45.  
  46.                 8.1.1 Using the mouse
  47.                 8.1.2 Menus
  48.                 8.1.3 Requesters
  49.                 8.1.4 Sliders
  50.  
  51.         8.2 Questions and Answers
  52.         8.3 Error messages
  53.         8.4 Example tasks
  54.  
  55.                 8.4.1 Teapots
  56.  
  57.         8.5 Glossary
  58.         8.6 File Format
  59.  
  60.  
  61. 1. GETTING STARTED
  62.  
  63. 1.1 HARDWARE REQUIREMENTS
  64.  
  65.         The minimum hardware  required  to  run  Model4D  is  an Amiga
  66.  
  67. computer with 512K of chip  memory,  512K  of  fast memory and 7.14mhz
  68. 68000 processor, eg. the Amiga 500P.
  69.  
  70.         With the minimum set up the  user will be restricted by memory
  71. as to the complexity of the scenes  that can be created.  The speed of
  72. the creation of scenes will also  be  slow at any level of complexity.
  73. The interlaced screen  mode  used  in  Model4D  will  also suffer from
  74. "flicker" on a basic system  -  this  can  be improved by changing the
  75. palette.
  76.  
  77.         The above problems outline the  need  for; more fast memory, a
  78. faster processor and  a  flicker  fixer.   Note  that  a  hard disk is
  79. optional as Model4D will run from floppy disk very easily.
  80.  
  81.         The recommended system is an  Amiga  3000,  or system built to
  82. equivalent specification.
  83.  
  84. 1.2 SOFTWARE REQUIREMENTS
  85.  
  86.         Requires Kickstart 1.3 or higher (Kickstart 2.0 compatible).
  87.         The    program    will     require    the    diskfont.library,
  88. mathieeedoubbas.library and mathieeedoubtrans.library   to  be present
  89. in the LIBS:  directory.   The  program  also  requires  that you have
  90. CLIPS: assigned to somewhere  writable  like  RAM: for cutting,copying
  91. and pasting objects.
  92.  
  93. 1.3 RUNNING MODEL4D
  94.  
  95.         Model4D can be run  from  Workbench  or  from  a  CLI.  To run
  96. Model4D from Workbench  simply  double  click  on  its  icon.   To run
  97. Model4D from a CLI, first  open  a  CLI  or  Shell window, then in the
  98. Model4D directory type Model4D<return>.
  99.  
  100.  
  101. 2. WHAT IS MODEL4D?
  102.  
  103.         The problem is one of constructing a computer model of objects
  104. in three-dimensions.  Displaying  these  models  on  a two-dimensional
  105. display device such as a monitor and supplying tools to arrange three-
  106. dimensional scenes and animations are  thus  needed.  Objects that are
  107. often needed to be modelled are very complex for a computer, such as a
  108. person, as they  do  not  conform  to  a  mathematical  model  and are
  109. essentially "random".  This program is the prototype for a system that
  110. would have "3D brushing" where any  such object could be modelled like
  111. a mass of clay.  This was  beyond  the  scope of this version but when
  112. using it the emphasis on object flexibility will become apparent.  For
  113. example the files produced store  all  vertices  and  edges as if each
  114. object were "random"; even if it could be described mathematically.
  115.  
  116. 2.1 WHAT CAN IT DO?
  117.  
  118.         In Model4D scenes  can  be  created  from several mathematical
  119. primitives and two tools  -  lathe  and  extrude.   The lathe provides
  120. flexible user-definition of  objects  of  rotation  and extrude allows
  121. user-definition of box-like  objects  such  as  a  house, for example.
  122. These can be combined and mixed together  in a hierarchy of objects in
  123. any way you like.  The idea  of  a  hierarchy  may take a while to get
  124. used to, but it is very useful  and allows grouping of objects so that
  125. they can be moved or manipulated as a group.
  126.  
  127.         Simple animations can be created  in a frame-by-frame fashion.
  128. Each frame can have its own user-orientation and lightsource position.
  129. If objects need to be changed  in  different frames, they can be given
  130. their own object hierarchy.  Animations can  be played back in various
  131. ways - once through forward, forward loop, backward loop and ping-pong
  132. forward-backward loop.
  133.  
  134. 2.2 HOW DOES IT DO IT?
  135.  
  136.         Three-dimensional modelling  on  two-dimensional  devices  has
  137. been tackled in several ways by  other  programs  on the market in the
  138. past.  Scenes can be displayed in a perspective view that looks 3D but
  139. there can be problems with positioning anything in this mode.  One way
  140. of overcoming this problem is to have multiple views of different axes
  141. much like the third-angle views used by graphic designers.  This makes
  142. identifying 3D positions easier but doesn't give a good representation
  143. of the scene.  Model4D gives you the  option of working in either a 3D
  144. mode, the default,  or  a  2D  tri-view  mode.   The  2D  view gives a
  145. wireframe only quick view for easy  positioning  of the 3D cursor (see
  146. 2.4).
  147.  
  148. 2.3 VIEW MODES
  149.  
  150.         As mentioned  in  2.2  there  are  two  "edit  modes"  -  a 3D
  151. perspective one and a 2D tri-view one.   In the 2D mode the display is
  152. wireframe only but in the 3D mode four view modes are available.  They
  153. are,  in  order  of  complexity  and  time-to-draw;  wireframe,  flat,
  154. lit_flat, and Gouraud.
  155.  
  156.         Wireframe is the fastest  mode  and  draws  the outline of the
  157. objects in the hierarchy - a good mode to start editing in.
  158.  
  159.         Flat  mode  draws  objects   with   a   single  colour  filled
  160. appearance; the wireframe edges can be either on or off, with them off
  161. only a silhouette of the shape  can  be  seen.  This mode gives a much
  162. better sense of depth than the  wireframe  as only parts of the object
  163. that should be in view can be seen.
  164.  
  165.         Lit_flat mode uses  a  "lightsource"  to  light  the  parts of
  166. objects that should be lit  by  the  lightsource and darkens the parts
  167. facing away from it.  Again  edges  can  be  turned  on or off and the
  168. light source can be moved to any position in the scene.
  169.  
  170.         Gouraud mode is a scan-line  based  drawing mode that attempts
  171. to smooth out any curved objects in the scene to eliminate the faceted
  172. appearance caused by the use  of  a  polygon  mesh.  It again uses the
  173. lightsource to light the objects.
  174.  
  175. 2.4 THE 3D CURSOR
  176.  
  177.         At all times during the use of  Model4D there is a cursor that
  178. is used for positioning objects and the  lightsource.  To do this in a
  179. three-dimensional world the cursor needs also to be three-dimensional.
  180. The coordinates of the 3D cursor  are  displayed in the edit panel and
  181. can be positioned by sliding the sliders  in the edit window or simply
  182. by clicking the mouse in the  main  drawing  window either in 3D or 2D
  183. tri-view edit mode.
  184.  
  185. 2.5 MESSAGES
  186.  
  187.         Any information or error  messages  that  are  produced at any
  188. time during the use of the program  appear  in the menu bar at the top
  189. of the screen.  If at any time you are not sure what is happening look
  190. at the menu bar for a  message  -  3D  drawing takes time; the program
  191. might not be "stuck" but just calculating something!
  192.         The only exception to this  is  with requesters; an error when
  193. specifying values in a requester will  appear  in  the drag bar of the
  194. requester window (see Appendix 8.1.3).
  195.  
  196.  
  197. 3. MENUS
  198.  
  199.         In this user-manual menu  items  will  be  referred  to in the
  200. following format:
  201.  
  202.  
  203.                 Menu.MenuItem.SubItem
  204.  
  205.         For example "Object.Primitive.Sphere" means  select the Object
  206. menu pull down to the  Primitive  item,  the submenu will then appear,
  207. pull down to the Sphere are select.  Not all menu items have sub items
  208. thus the absence of  a  sub  item,  for example "Project.Files", means
  209. select the menu item FILES.
  210.  
  211.  
  212. 3.2 MODEL4D MENUS
  213.  
  214. 3.2.1 PROJECT MENU
  215.  
  216.         PROJECT.FILES brings up  a  file  requester  with  LOAD, SAVE,
  217. DELETE AND CANCEL buttons.  Directories can be accessed by clicking on
  218. their name, parent directories can be  accessed by clicking on the "<"
  219. icon in the top-right of the window.   There is a scroll bar to scroll
  220. through the current directory.  A new  drive or directory can be typed
  221. into the "Drawer:" box; there are  three commonly needed drive buttons
  222. at the top of the window;  DF0:,  DF1:  and DH0:.  An extension can be
  223. entered into the "Ext:" box to only display certain files in the list.
  224. For example you could give all your  3d projects the extension ".3d" -
  225. typing "3d" into the Ext: box  will only display directories and files
  226. with the extension ".3d".  A file  can  be selected by clicking on its
  227. name or by entering its name into the "File:" box.  An action can then
  228. be performed on that file:
  229.  
  230.                 LOAD -  attempt to load project into memory;
  231.                         this will lose the current project in memory.
  232.                         if the file is not the correct format an error
  233.                         message will appear.
  234.  
  235.                 SAVE -  attempt to save current project;
  236.                         if the file exists it will be overwritten.
  237.                         if the file cannot be written to an error
  238.                         message will appear.
  239.  
  240.                 DELETE -attempt to delete selected file.
  241.                         a prompt will be given to make sure you really
  242.                         want to delete the selected file.
  243.                         if file could not be deleted an error message
  244.                         will appear.
  245.  
  246.                 CANCEL -exit file requester with no action.
  247.  
  248.         PROJECT.REFRESH redraws  all  open  windows  and  redraws  the
  249. current scene.  Useful if something unexpected corrupts the screen.
  250.  
  251.         PROJECT.ABOUT brings  up  a  window  with  version  number and
  252. author notes in it.  Press the CONTINUE button to close.
  253.  
  254.         PROJECT.SCREEN.INTERLACE  toggles  interlace  for  the  render
  255. screen.
  256.  
  257.         PROJECT.SCREEN.OVERSCAN  toggles  overscan   for   the  render
  258. screen.
  259.  
  260.         PROJECT.RENDER opens a  ham  screen  using  the PROJECT.SCREEN
  261. specifications and renders the scene  using  the gouraud method but in
  262. full colour using the colours defined for objects in wireframe or flat
  263. mode.  When the  rendering  has  completed  a  file  requester  can be
  264. brought up from a menu RENDER.FILES on the ham screen in order to save
  265. the rendered image as an IFF picture file.  RENDER.EXIT closes the ham
  266. screen and returns to the editor screen.
  267.  
  268.         PROJECT.NEW wipes the current project from memory and starts a
  269. fresh project.  The preferences will remain the same.
  270.  
  271.         PROJECT.QUIT brings up a  YES/NO  requester  asking you if you
  272. want to quit Model4D -  clicking  YES  will  exit the program, NO will
  273. return you to the program.
  274.  
  275.  
  276. 3.2.2 OBJECT MENU
  277.  
  278.         OBJECT.FILES brings  up  a  file  requester  identical  to the
  279. project file requester.  The difference  is  that the files LOADed and
  280. SAVEd are objects and not  projects.   Objects  can be selected from a
  281. scene and saved individually and  reloaded  as  many times as you like
  282. into any project.  LOADing an object  places  it at the current cursor
  283. position and at the current position  in the hierarchy - changed using
  284. the hierarchy window (see 5.).
  285.  
  286. NOTE: Objects retain their palette entry  but not the actual colour as
  287. this is palette dependant.  Palettes  are  saved with projects but not
  288. with objects for obvious reasons.
  289.  
  290.         OBJECTS.PRIMITIVE.CUBE brings up  a  requester  with  a single
  291. Size slider in it.  The size is  displayed  in the box to the right of
  292. the slider and can be entered via  the keyboard by clicking in the box
  293. on the number and entering a number between 0 and 200.  Alternatively,
  294. the size can be changed by  sliding  the  slider - the number will not
  295. change until the mouse button is released.
  296.         Clicking on OK will create a cube of the requested size at the
  297. current cursor position.
  298.         Clicking on CANCEL will close the requester and do nothing.
  299.  
  300.         OBJECTS.PRIMITIVE.SPHERE  brings  up  a   requester  with  two
  301. sliders - Radius and  Divisions.   Both  attributes  can be changed by
  302. either sliding the slider or by entering a number in the corresponding
  303. number box.  Radius  determines  the  overall  size  of  the resulting
  304. sphere and should be  a  number  between  0  and  200.  Divisions is a
  305. measure of the density of  the  polygon-mesh  approximation of a curve
  306. and should be between 0 and  100.  Practically, values greater than 50
  307. are over-kill for a sphere.  The best  way to understand the result of
  308. changing this value is to  try  out  different numbers.  Basically the
  309. higher the number the better the curvature but the longer it will take
  310. to calculate and the bigger the  resultant  file as there will be more
  311. faces.
  312.         Clicking  on  OK  will  create   a  sphere  of  the  requested
  313. specification at the current cursor position.
  314.         Clicking on CANCEL will close the requester and do nothing.
  315.  
  316.         OBJECTS.PRIMITIVE.HALF-SPHERE brings up  a  requester with two
  317. sliders - Radius and  Divisions.   Both  attributes  can be changed by
  318. either sliding the slider or by entering a number in the corresponding
  319. number box.  Radius determines the overall size of the resulting semi-
  320. sphere and should be  a  number  between  0  and  200.  Divisions is a
  321. measure of the density of  the  polygon-mesh  approximation of a curve
  322. and should be between 0 and  100.  Practically, values greater than 50
  323. are over-kill for  a  half-sphere.   The  best  way  to understand the
  324. result of  changing  this  value  is  to  try  out  different numbers.
  325. Basically the higher  the  number  the  better  the  curvature but the
  326. longer it will take to calculate and  the bigger the resultant file as
  327. there will be more faces.
  328.         Clicking on OK  will  create  a  half-sphere  of the requested
  329. specification at the current cursor position.
  330.         Clicking on CANCEL will close the requester and do nothing.
  331.  
  332.         OBJECTS.PRIMITIVE.CYLINDER brings  up  a  requester  with  two
  333. sliders - Radius and  Divisions.   Both  attributes  can be changed by
  334. either sliding the slider or by entering a number in the corresponding
  335. number box.  Radius  determines  the  overall  size  of  the resulting
  336. cylinder - its length is  the  same  as  its  diameter and should be a
  337. number between 0 and 200.  Divisions  is  a  measure of the density of
  338. the polygon-mesh approximation of a curve  and should be between 0 and
  339. 100.  The best way to understand the  result of changing this value is
  340. to try out different  numbers.   Basically  the  higher the number the
  341. better the curvature but the longer it  will take to calculate and the
  342. bigger the resultant file as there will be more faces.
  343.         Clicking on  OK  will  create  a  cylinder  of  the  requested
  344. specification at the current cursor position.
  345.         Clicking on CANCEL will close the requester and do nothing.
  346.  
  347.         OBJECTS.PRIMITIVE.PYRAMID brings up a  requester with a single
  348. Size slider in it.  The size is  displayed  in the box to the right of
  349. the slider and can be entered via  the keyboard by clicking in the box
  350. on the number.  Alternatively, the size  can be changed by sliding the
  351. slider -  the  number  will  not  change  until  the  mouse  button is
  352. released.
  353.         Clicking on OK will create a  pyramid of the requested size at
  354. the current cursor position.
  355.         Clicking on CANCEL will close the requester and do nothing.
  356.  
  357.         OBJECTS.PRIMITIVE.CONE brings up a  requester with two sliders
  358. - Radius and Divisions.   Both  attributes  can  be  changed by either
  359. sliding the slider or by entering a number in the corresponding number
  360. box.  Radius determines the overall size  of  the resulting cone - its
  361. length is the same as its  diameter  and  should be a number between 0
  362. and 200.  Divisions is a  measure  of  the density of the polygon-mesh
  363. approximation of a curve and should  be  between  0 and 100.  The best
  364. way to understand the result  of  changing  this  value  is to try out
  365. different numbers.  Basically the  higher  the  number  the better the
  366. curvature but the longer it will take  to calculate and the bigger the
  367. resultant file as there will be more faces.
  368.         Clicking  on  OK  will   create   a   cone  of  the  requested
  369. specification at the current cursor position.
  370.         Clicking on CANCEL will close the requester and do nothing.
  371.  
  372.         OBJECTS.PRIMITIVE.SPIKY-SPHERE brings up a  requester with two
  373. sliders - Radius and  Divisions.   Both  attributes  can be changed by
  374. either sliding the slider or by entering a number in the corresponding
  375. number box.  Radius  determines  the  overall  size  of  the resulting
  376. spiky-sphere and should be a number between 0 and 200.  Divisions is a
  377. measure of the density of  the  polygon-mesh  approximation of a curve
  378. and should be between 0 and  100.  Practically, values greater than 50
  379. are over-kill for a  spiky-sphere.   The  best  way  to understand the
  380. result of  changing  this  value  is  to  try  out  different numbers.
  381. Basically the higher  the  number  the  better  the  curvature but the
  382. longer it will take to calculate and  the bigger the resultant file as
  383. there will be more faces.
  384.         Clicking on OK will  create  a  spiky-sphere  of the requested
  385. specification at the current cursor position  -  this is a sphere with
  386. random amounts added to its radius  all around the sphere resulting in
  387. a "spiky" look.
  388.         Clicking on CANCEL will close the requester and do nothing.
  389.  
  390.         OBJECTS.RESET resets the object rotation and scaling.
  391.  
  392.         OBJECTS.RESIZE.DOUBLE doubles the size of the selected object.
  393.  
  394.         OBJECTS.RESIZE.HALF halves the size of the selected object.
  395.  
  396.  
  397.         OBJECTS.RESIZE.VARIABLE brings up a  requester  with four Size
  398. sliders in it.  The size is displayed  in  the box to the right of the
  399. slider and can be entered via the  keyboard, by clicking in the box on
  400. the number, and should be between  0 and 200.  Alternatively, the size
  401. can be changed by sliding  the  slider  -  the  number will not change
  402. until the mouse button is released.  The  top slider is a global value
  403. which will set  each  of  the  other  sliders  (X,Y,Z)  to that value.
  404. Alternatively  each  of  the  X,Y   and   Z  sliders  can  be  altered
  405. individually - it is these values which  are used; the global value is
  406. simply for setting the X,Y,Z sliders and nothing else.
  407.         Clicking on OK will change the  size of the selected object to
  408. the percentage of its size in the three axes specified.
  409.         Clicking on CANCEL will close the requester and do nothing.
  410.  
  411.         OBJECTS.FLIP.X rotates the selected  object  180 degrees about
  412. its X-axis.
  413.  
  414.         OBJECTS.FLIP.Y rotates the selected  object  180 degrees about
  415. its Y-axis.
  416.  
  417.         OBJECTS.FLIP.Z rotates the selected  object  180 degrees about
  418. its Z-axis.
  419.  
  420.         OBJECTS.ROTATE brings up a  requester  with four Angle sliders
  421. in it.  The angle is displayed in  the  box to the right of the slider
  422. and can be entered via the  keyboard,  by  clicking  in the box on the
  423. number, and should be between 0 and 360.  Alternatively, the angle can
  424. be changed by sliding the slider  -  the  number will not change until
  425. the mouse button is released.  The top  slider is a global value which
  426. will  set  each  of  the   other   sliders   (X,Y,Z)  to  that  value.
  427. Alternatively  each  of  the  X,Y   and   Z  sliders  can  be  altered
  428. individually - it is these values which  are used; the global value is
  429. simply for setting the X,Y,Z sliders and nothing else.
  430.         Clicking on OK will change the rotation of the selected object
  431. about each of its axes by the angles specified.
  432.         Clicking on CANCEL will close the requester and do nothing.
  433.  
  434. 3.2.3 ANIMATION MENU
  435.  
  436.         ANIMATION.FILES not available.
  437.  
  438.         ANIMATION.PANEL toggles on/off the animation panel (see 6.).
  439.  
  440.         ANIMATION.FRAMES.SET # brings up  a  Animation Size requester.
  441. This number set is the size of the animation in frames.  If the number
  442. is bigger than the current  frame  count  then the necessary number of
  443. frames are added.  If the number is  less than the current frame count
  444. then the necessary number of frames  are  deleted  from the end of the
  445. animation.
  446.         Clicking on OK will set the frame count.
  447.         Clicking on CANCEL will close the requester and do nothing.
  448.  
  449.         ANIMATION.FRAMES.ADD FRAME adds a  frame  at the current frame
  450. position.
  451.  
  452.         ANIMATION.FRAMES.GOTO FRAME brings up a requester with a frame
  453. slider in it.  Specify the frame to jump to.
  454.         Clicking on OK will display the specified frame.
  455.         Clicking on CANCEL will close the requester and do nothing.
  456.  
  457.         ANIMATION.FRAMES.DELETE FRAME deletes  the  current frame.  If
  458. there is only one  frame  then  nothing  is  deleted  and a message is
  459. displayed.
  460.  
  461.         ANIMATION.FRAME RATE not available.
  462.  
  463. 3.2.4 TOOLS MENU
  464.  
  465.         TOOLS.LATHE brings up a  requester  with  Radius and Divisions
  466. sliders in it.  Since the  shape  is  to  be  defined  by the user the
  467. radius is simply a size percentage -  100 means the same size that you
  468. draw it, 200 is  double  size  etc.   Divisions  is  a  measure of the
  469. density of the polygon-mesh  approximation  of  a  curve and should be
  470. between 0 and 100.  The best way  to understand the result of changing
  471. this value is to try out  different numbers.  Basically the higher the
  472. number the better  the  curvature  but  the  longer  it  will  take to
  473. calculate and the bigger  the  resultant  file  as  there will be more
  474. faces.
  475.         Clicking on OK will prompt you  to define the axis of rotation
  476. for the lathe.  Clicking two points with  the mouse, the start and end
  477. points, will accomplish this.  You will  then  be prompted to define a
  478. shape for rotation - click as  many  points  as you like; they will be
  479. joined together to form a shape.  A  double-click on the last point is
  480. necessary to  complete  the  process.   The  resulting  lathe  is then
  481. produced.
  482.         Clicking on CANCEL will close the requester and do nothing.
  483.  
  484.         TOOLS.EXTRUDE brings up a Size requester with a size slider in
  485. it.  The size is the  amount  the  defined  shape will be stretched to
  486. give depth and should be between 0 and 200.
  487.         Clicking on OK will  prompt  you  to  define the shape.  Click
  488. points with the mouse to  define  a  shape  - double-click on the last
  489. point to complete the process.  If  the  last point does not touch the
  490. first point then it will join  them  together for you.  The shape will
  491. then be stretched away from you to form a solid.
  492.         Clicking on CANCEL will close the requester and do nothing.
  493.  
  494. 3.2.5 PREFERENCES MENU
  495.  
  496.         PREFERENCES.LIGHTSOURCE toggles the display of the lightsource
  497. position with an "X".
  498.  
  499.         PREFERENCES.WORKBENCH toggles the  workbench  screen.  Closing
  500. it can release some memory.  NOTE: The Workbench can only be closed if
  501. no programs have been run from it - including Model4D!
  502.  
  503.         PREFERENCES.GRID toggles a  background  grid  to  the  scene -
  504. useful for positioning objects etc.
  505.  
  506.         PREFERENCES.PERSPECTIVE  toggles  perspective  viewing  in  3D
  507. mode.  Turning perspective  off  results  in  no  depth-shrinking; ie.
  508. there is no idea of depth in the image.
  509.  
  510.         PREFERENCES.EDGES toggles  edges  in  both  flat  and lit_flat
  511. viewmodes.  In flat mode turning  edges  off gives a "silhouette" look
  512. to objects.  In lit_flat mode  turning  edges  off looks good as faces
  513. are shaded depending on their lighting.
  514.  
  515.         PREFERENCES.SHADOWS toggles  shadowing  in  both  lit_flat and
  516. Gouraud drawing modes, including the colour rendering.  Faces that are
  517. hidden from the lightsource by other faces are darkened, ie. shadowed.
  518.  
  519.         PREFERENCES.VIEWMODE.WIREFRAME puts  3D  mode  into  wireframe
  520. drawing mode.  This is the  fastest  drawing  mode  and only draws the
  521. outline of objects.
  522.  
  523.         PREFERENCES.VIEWMODE.FLAT puts 3D mode into flat drawing mode.
  524. This takes the same time to calculate as wireframe but takes longer to
  525. draw.  It fills the faces in with the objects colour.
  526.  
  527.         PREFERENCES.VIEWMODE.LIT_FLAT  puts  3D   mode  into  lit_flat
  528. drawing mode.  This takes slightly  longer  to  calculate and the same
  529. time to draw as flat.   It  uses  the "lightsource", which defaults to
  530. the origin but can be  moved  (see  4.  Edit  panel), to determine how
  531. light a face should  be.   It  changes  the  palette  to  a grey scale
  532. palette, which cannot be edited,  for  the shades.  The colour palette
  533. is retained and is  restored  when  you  return  to  wireframe or flat
  534. viewmode.
  535.  
  536.         PREFERENCES.VIEWMODE.GOURAUD puts 3D mode into Gouraud drawing
  537. mode.  This takes the longest  to  both  calculate  and draw.  It also
  538. changes to a grey scale  palette  and  uses  the light source to light
  539. faces.  It also smooths curved objects using the available grey scales
  540. to attempt to eliminate the faceted appearance of curved surfaces (eg.
  541. a sphere).  This mode is not  really  practical  for editing in but in
  542. case anyone has a 50mhz 68040 out there give it a go!
  543.  
  544. 4. EDIT PANEL
  545.  
  546.         SELECT ICON is not available.
  547.  
  548.         BRUSH ICON is not available.
  549.  
  550.         USE ICON is not available.
  551.  
  552.         HIERARCHY WINDOW ICON toggles the hierarchy window (see 4. for
  553. operation of hierarchy window).
  554.  
  555.         2D ICON toggles 3D/2D tri-view edit mode.
  556.  
  557.         CHANGE OBJECT ORIGIN ICON  moves  the  origin for the object's
  558. rotation and scaling to the  current  cursor  position.  If object has
  559. previously been rotated or scaled about another origin then the option
  560. to reset rotation and scaling for that object will be given - no reset
  561. will do the previous rotation and scaling about the new origin.
  562.  
  563.         CUT ICON cuts out the  selected  object  from the scene.  This
  564. actually SAVEs the object to a temporary object file "Model4D_clip" in
  565. the CLIPS: directory which is  usually  set to the clipboard directory
  566. in the RAM  disk.   This  may  take  a  few  seconds  but is extremely
  567. flexible as not only can the object  be  pasted back in from here (see
  568. below) but can also be edited  in  a  text editor and/or saved to disk
  569. for later use.  This file  can  be  loaded  in  as an object using the
  570. OBJECTS.FILES requester.
  571.  
  572.         COPY ICON copies the selected  object.   This  also saves to a
  573. temporary file as with CUT.
  574.  
  575.         PASTE ICON pastes the clipboard  object  at the current cursor
  576. position.  This loads the above  mentioned temporary object file.  The
  577. clipboard object can be pasted as many times as memory will allow.
  578.  
  579.         MOVE ICON moves  the  selected  object  to  the current cursor
  580. position.
  581.  
  582.         ZOOM IN ICON zooms the user position forward by Step Size (see
  583. 7. Animation panel).
  584.  
  585.         ZOOM OUT ICON zooms the user  position back by Step Size (see.
  586. 7. Animation panel).
  587.  
  588.         UNDO ICON is not available.
  589.  
  590.         LIGHTSOURCE MOVE ICON  moves  the  lightsource  to the current
  591. cursor position.
  592.  
  593.         CURSOR XY SLIDER moves cursor left/right, up/down.
  594.  
  595.         CURSOR Z SLIDER moves cursor in/out.
  596.  
  597.         PALETTE EDITOR ICON  brings  up  the  palette  editor  (see 6.
  598. Palette Editor).
  599.  
  600.         COLOUR ICONS change the colour of the selected object.
  601.  
  602.  
  603. 5. HIERARCHY WINDOW
  604.  
  605.         This window, when open, allows the  user to inspect the object
  606. hierarchy and select objects in it.   When this window is first opened
  607. the objects defined at the root are displayed in a list.  If there are
  608. more than can fit in the  window  (10),  use  the UP and DOWN icons to
  609. scroll through the list.
  610.  
  611.         OBJECT NAME ICONS will make that object the "selected object".
  612.  
  613.         RENAME ICON brings up a  requester  with  a Name string in it.
  614. This can be edited by clicking in the box.  Clicking on OK changes the
  615. object name. Clicking on CANCEL leaves it as it was.
  616.  
  617.         GO TO ICON takes you  down  the hierarchy, making the selected
  618. object the parent.
  619.  
  620.         PARENT ICON takes you up the  hierarchy to the parent.  if you
  621. at the root then an error message is displayed.
  622.  
  623.         DOWN ICON scrolls down name list.
  624.  
  625.         UP ICON scrolls up name list.
  626.  
  627.         CREATE ICON creates  a  abstract  group  object.   This  is an
  628. object with no faces but  simply  serves  as  a  parent for a group of
  629. objects.  Its origin is at the current cursor position.
  630.  
  631.  
  632. 6. PALETTE EDITOR
  633.  
  634.         COLOUR ICONS select colour to edit.
  635.  
  636.         RED SLIDER changes red component of selected colour.
  637.  
  638.         GREEN SLIDER changes green component of selected colour.
  639.  
  640.         BLUE SLIDER changes blue component of selected colour.
  641.  
  642.         COPY ICON prompts  for  a  target  colour  slot.   Selecting a
  643. second colour copies first colour to second.
  644.  
  645.         SWAP ICON prompts for second  colour slot.  Selecting a second
  646. colour swaps first colour with second.
  647.  
  648.         SPREAD ICON prompts for  a  second  colour  slot.  Selecting a
  649. second colour smoothly spreads colours between first and second.
  650.  
  651.         UNDO ICON resets palette to as it was before editing started.
  652.  
  653.         OK ICON accepts changes.
  654.  
  655.         CANCEL ICON closes palette editor and  resets palette to as it
  656. was before editing started.
  657.  
  658.  
  659. 7. ANIMATION PANEL
  660.  
  661.         START FRAME ICON sets current frame to frame 1.
  662.  
  663.         END FRAME ICON sets current frame to last frame.
  664.  
  665.         PREVIOUS FRAME ICON sets current frame to previous frame.
  666.  
  667.         NEXT FRAME ICON sets current frame to next frame.
  668.  
  669.         ADD FRAME ICON adds a frame at the current position.
  670.  
  671.         DELETE FRAME ICON deletes current frame.
  672.  
  673.         EDIT FRAME SPECIFIC ICON gives frame its own hierarchy.
  674.  
  675.         PLAY ANIMATION ICON plays animation once from current frame.
  676.  
  677.         PLAY FORWARD LOOP ICON plays animation in forward loop.
  678.  
  679.         PLAY BACKWARD LOOP ICON plays animation in backward loop.
  680.  
  681.         PING-PONG ICON plays animation forward-backward-forward....
  682.  
  683.         RESET USER ORIENTATION ICON resets user orientation.
  684.  
  685.         USER XY SLIDER moves user left/right, up/down.
  686.  
  687.         USER Z SLIDER moves user in/out.
  688.  
  689.         USER XY ANGLE SLIDER rotates user about x/y axes.
  690.  
  691.         USER Z ANGLE SLIDER rotates user about z axis.
  692.  
  693.         STEPSIZE SLIDER sets size of steps for user/cursor movement.
  694.  
  695.  
  696. 8. APPENDICES
  697.  
  698. 8.1 AMIGA INTERFACE USAGE
  699.  
  700. 8.1.1 USING THE MOUSE
  701.  
  702.         For anybody not familiar with  using  Amiga programs, here are
  703. few pointers to acclimatize you.  First  of  all, 95% of functions are
  704. available using the mouse; the only time  you NEED to use the keyboard
  705. will be to type a file  name  or  an  object name etc.  Operations are
  706. available by CLICKING (click-release of left mouse button) on icons or
  707. by selecting MENUS.  This approach  means that programs are relatively
  708. easy to learn.  Here are some definitions:
  709.  
  710.         SELECT button :- LEFT mouse button
  711.  
  712.         MENU button :- RIGHT mouse button
  713.  
  714.         ICON/GADGET/BUTTON :- small  area  on  screen  identified by a
  715. graphic.
  716.  
  717.         MENU :- Pull down list of operation choices.
  718.  
  719.  
  720. 8.1.2 MENUS
  721.  
  722. 8.1.2.1 MOUSE SELECTION
  723.  
  724.         Holding down the mouse  menu  button  (right button) gives you
  725. the pull-down menus from  the  menu  bar.   These  are accessed in the
  726.  
  727. standard Amiga way.  For those not familiar with Amiga menus, they are
  728. accessed in the following way:
  729.  
  730.         i)   Hold down right mouse button (menu button)
  731.         ii)  Keeping button held, put  mouse  mouse  pointer on to the
  732. menu bar at the top of the screen.
  733.         iii) Put mouse pointer onto menu option and pull down the menu
  734. - the items will high-light as the mouse runs over them.
  735.         iv)  When required option high-lighted release menu button.
  736.         (v)  Item is selected.
  737.  
  738. 8.1.2.2 KEYBOARD SHORT-CUTS
  739.  
  740.         Some menus have  keyboard  equivalents  -  these are displayed
  741. next to the menu item in the menu  itself.  The "A" is the right Amiga
  742. key on the  keypad  -  this  must  be  held  down  while  pressing the
  743. appropriate key.  There is absolutely  no difference between selecting
  744. the menu item with the mouse or using the keyboard short-cut.
  745.  
  746.  
  747. 8.1.3 REQUESTERS
  748.  
  749.         Requesters are pop-up boxes containing information and/or some
  750. gadgets to make  changes  to  parameters.   Requesters  always have at
  751. least one EXIT  button,  usually  two  -  OK  and  CANCEL.   The ABOUT
  752. requester in an example that  has  a  single  CONTINUE button.  At the
  753. other end of the spectrum  the  File  requester is a complex requester
  754. with several buttons, and rather than a simple OK has three operations
  755. - LOAD, SAVE and  DELETE.   When  a  requester  appears,  it should be
  756. attended to and closed  before  trying  to  access  other parts of the
  757. program.  Closing the requester is done  by clicking on an exit button
  758. - usually at the bottom  of  the  requester.   Clicking on CANCEL will
  759. close the requester with no affect to the program.
  760.         Error messages associated with a  requester will appear in the
  761. drag bar of the requester window.
  762.  
  763. 8.1.4 SLIDERS
  764.  
  765.         Sliders are a mouse operated way  of specifying a value within
  766. a certain range.  An example  of  sliders  are  the scroll bars on the
  767. Workbench windows that specify what  part  of the directory appears in
  768. the  window.    In  Model4D  sliders   are  used  to  specify  various
  769. parameters, such as the radius  of  a  sphere  or  the position of the
  770. user.
  771.         To slide a slider,  hold  down  the  left  mouse button on the
  772. slider gadget and while still holding  down  the button move the mouse
  773. to slide the slider inside its  container  box to the desired position
  774. and release the button.
  775.         Note  that  the  sliders  to   specify  the  cursor  and  user
  776. orientation in Model4D are AUTO-CENTRING;  that  is they always return
  777. to the centre of  their  container  after  moving  them - sliding them
  778. moves relative to the current position.
  779.  
  780.  
  781. 8.2 QUESTIONS AND ANSWERS
  782.  
  783. 1. How do I get started on a project?
  784.  
  785.         As with any project, you need a  clear idea of what it is that
  786. you want to achieve before  using  Model4D.   Having said that Model4D
  787. does allow the user to  'experiment'  with  various functions with the
  788. ability to CUT any objects that are not needed.
  789.  
  790.         With an objective set,  you  can  create  the initial grouping
  791. objects in the hierarchy window by  clicking on CREATE and then RENAME
  792. to give them a meaningful  names.   Then  fleshing  out the objects by
  793. clicking GO TO on each object  in  turn  and using the object creation
  794. and manipulation functions.
  795.  
  796.  
  797. 2. Is there a limit to the number of objects I can have?
  798.  
  799.         Yes. The memory  of  your  computer  will  limit  you, but the
  800. program will not.
  801.  
  802. 3. Is there a limit to how many levels I can go to in the hierarchy?
  803.  
  804.         No. It takes next to no memory to create a grouping object.
  805.  
  806. 4. How do I position an  object  further  away without moving the view
  807. orientation?
  808.  
  809.         There are two ways this  can  be  done.   The 3D cursor can be
  810. moved in or out using the z-slider in the edit panel or the cursor can
  811. be positioned in the 2D tri-view.  Clicking on the MOVE OBJECT icon in
  812. the edit panel then moves the object to the cursor.
  813.  
  814.  
  815. 8.3 ERROR MESSAGES
  816.  
  817. ERROR   : File does not exit.
  818. SYMPTOMS: Trying to load a file  that  does not exist in the specified
  819. directory.
  820. SOLUTION: Change directory to where file is and/or specify a file that
  821. exists in specified directory.
  822.  
  823. ERROR   : File not correct format.
  824. SYMPTOMS: Trying to load a non-Model4D file.
  825. SOLUTION: Choose a Model4D file.
  826.  
  827. ERROR   : This is an object file.
  828. SYMPTOMS: Trying to load an Model4D object file as a project.
  829. SOLUTION: Load file as an object.
  830.  
  831. ERROR   : This is a project file.
  832. SYMPTOMS: Trying to load a Model4D project file as an object.
  833. SOLUTION: Load file as a project.
  834.  
  835. ERROR   : Could not save to this file.
  836. SYMPTOMS: Trying to save to a  file  that  is a directory or is write-
  837. protected.
  838. SOLUTION: If file is a directory  then  change  file name, if not then
  839. use CLI command PROTECT to write  enable file (see AmigaDOS manual for
  840. usage).
  841.  
  842. ERROR   : No object selected to save.
  843. SYMPYOMS: Trying to save an object without first selecting one.
  844. SOLUTION: Select object to save in hierarchy window.
  845.  
  846. ERROR   : No object selected.
  847. SYMPTOMS: Trying  to  perform  an  object  manipulation  without first
  848. selecting an object.
  849. SOLUTION: Select object to manipulate in hierarchy window.
  850.  
  851. ERROR   : Could not write to CLIPS:Model4D_clip
  852. SYMPTOMS: Trying to cut/copy object and  CLIPS: directory has not been
  853. assigned to a writable area (usually RAM:Clipboards).
  854. SOLUTION: Assign CLIPS: to RAM: or whereever you like (put in startup-
  855. sequence if possible).
  856.  
  857. ERROR   : No object to cut.
  858. SYMPTOMS: Selected cut without selecting an object.
  859. SOLUTION: Select object to cut in hierarchy window.
  860.  
  861. ERROR   : No object to copy.
  862. SYMPTOMS: Selected copy without selecting an object.
  863. SOLUTION: Select object to copy in hierarchy window.
  864.  
  865. ERROR   : No object to paste - could not read CLIPS:Model4D_clip.
  866. SYMPTOMS: Trying to paste an  object  without having previously cut or
  867. copy.
  868. SOLUTION: Cut or copy required object before selecting paste.
  869.  
  870. ERROR   : Size should be in range 0 - 200
  871. SYMPTONS: Entered number in size  number  box  less  than 0 or greater
  872. than 200.
  873. SOLUTION: Enter number between 0 and 200.
  874.  
  875. ERROR   : Angle should be in range 0 - 360
  876. SYMPTOMS: Entered number in angle  number  box  less than 0 or greater
  877. than 360.
  878. SOLUTION: Enter number between 0 and 360.
  879.  
  880. ERROR   : Radius should be in range 0 - 200.
  881. SYMPTOMS: Entered number in radius number  box  less than 0 or greater
  882. than 200.
  883. SOLUTION: Enter number between 0 and 200.
  884.  
  885. ERROR   : Divisions should be in range 0 - 100.
  886. SYMPTOMS: Entered number  in  divisions  number  box  less  than  0 or
  887. greater than 100.
  888. SOLUTION: Enter number between 0 and 100.
  889.  
  890. ERROR   : Cannot edit grey scale palette.
  891. SYMPTOMS: Trying to edit the fixed grey-scale palette.
  892. SOLUTION: To edit the colour  palette  go  to either wireframe or flat
  893. viewmode.
  894.  
  895. ERROR   : No previous frame.
  896. SYMPYOMS: Trying to go to previous frame on frame 1.
  897. SOLUTION: To get to the last  frame  select  END FRAME icon.  To add a
  898. frame select the ADD FRAME icon.
  899.  
  900. ERROR   : No next frame.
  901. SYMPTOMS: Trying to go to next frame on the last frame.
  902. SOLUTION: To get to the first frame select START FRAME icon.  To add a
  903. frame select the ADD FRAME icon.
  904.  
  905. ERROR   : Cannot delete only frame.
  906. SYMPTOMS: Trying to delete the only existing frame.
  907. SOLUTION: To start a new project select NEW from project menu.
  908.  
  909. ERROR   : This frame already has its own hierarchy.
  910. SYMPTOMS: Trying  to  give  the  only  existing  frame  another object
  911. hierarchy.
  912. SOLUTION: This function is only  available  if more than one animation
  913. frame exists.
  914.  
  915. ERROR   : Cannot animate one frame.
  916. SYMPTOMS: Trying to animate one frame.
  917. SOLUTION: Create some more frames.
  918.  
  919. ERROR   : Root has no parent.
  920. SYMPTOMS: Trying to go to parent object of root in hierarchy window.
  921. SOLUTION: If you want to group objects  into a single object, you have
  922. to click CREATE to create  a  grouping  object  and  cut and paste the
  923. objects into it.
  924.  
  925. ERROR   : Out of memory - could not complete task.
  926. SYMPTOMS: There is no more memory available to do the requested task.
  927. SOLUTION: Try saving the project, NEWing  and reloading; this may free
  928. up some memory, then make  the  scene  simpler  - recreate lathes with
  929. less divisions etc..
  930.  
  931.  
  932. 8.4 EXAMPLE TASKS
  933.  
  934.         Here are some  step-by-step  examples  of  how  Model4D can be
  935. used.
  936.  
  937. 8.4.1 TEAPOTS
  938.  
  939.         1. If already in  Model4D  select  PROJECT.NEW to clear memory
  940. and select PREFERENCES.VIEWMODE.WIREFRAME to  put  into wireframe view
  941. mode.  Otherwise run Model4D with its default settings.
  942.  
  943.         2. Select HIERARCHY WINDOW icon in  edit panel to bring up the
  944. hierarchy window.
  945.  
  946.         3. Select CREATE in  the  hierarchy  window  to create a group
  947. object.  Now select RENAME to rename it.  Enter "Teapot" and click OK.
  948.  
  949.         4. Select GO TO in hierarchy window to make Teapot the parent.
  950.  
  951.         5. Select PREFERENCES.GRID to on.
  952.  
  953.         6. Select TOOLS.LATHE and set  divisions  to 30.  Click OK and
  954. set axis to a vertical line -  use  grid to set start at top-middle of
  955. screen and end to bottom-middle of screen.  Now draw a large "C" shape
  956. on the left of the axis -  double  click on last point to finish.  The
  957. body of the teapot should now be drawn.
  958.  
  959.         7. Select RENAME in the hierarchy window and name it "Body".
  960.  
  961.         8. Select TOOLS.LATHE and set  divisions  to 20.  Click OK and
  962. set axis to the same vertical  line  -  use  grid to set start at top-
  963. middle of screen and end  to  bottom-middle  of  screen.  Now draw one
  964. side of the lid on the left of  the  axis - double click on last point
  965. to finish.
  966.  
  967.         9. Select RENAME in the hierarchy window and name it "Lid".
  968.  
  969.         10.Select TOOLS.EXTRUDE and set size to 10.  Click OK and draw
  970. the handle on the right hand  size  of  the body.  Double click on the
  971. last point.
  972.  
  973.         11.  Select  RENAME  in  the  hierarchy  window  and  name  it
  974. "Handle".
  975.  
  976.         12.Select TOOLS.LATHE and set divisions  to  10.  Click OK and
  977. set axis to a line angled  up  and  out  of  the left hand side of the
  978. body.  Now set a line parallel  to  this  axis offset by the radius of
  979. the spout - double click on the second point and we now have a spout.
  980.  
  981.         13.Select RENAME in the hierarchy window and name it "Spout".
  982.  
  983.         14.Select  PREFERENCES.VIEWMODE.FLAT  and  turn  edges  on  if
  984. necessary.
  985.  
  986.         15.Select the PALETTE EDITOR icon  in  the  edit panel to edit
  987. the colours.
  988.  
  989.         16.Select fifth  colour  and  set  the  Red/Green/Blue  all to
  990. around the middle of their sliders - this should give a shade of grey.
  991.  
  992.         17.Select sixth colour and set  Red  all  the way to the right
  993. (Maximum), and Green and Blue all the way to the left (Minimum) - this
  994. should give a bright red.
  995.  
  996.         18.Click OK to accept colour changes.
  997.  
  998.         19.Select the Lid in the hierarchy window.
  999.  
  1000.         20.Click on colour  six  (bright  red)  -  lid  should  now be
  1001. redrawn as red.
  1002.  
  1003.         21.Select the Handle in the hierarchy window.
  1004.  
  1005.         22.Click on colour two (black) -  handle should now be redrawn
  1006. as black.
  1007.  
  1008.         23.Select PARENT in the hierarchy window - back to root.
  1009.  
  1010.         24.Select the Teapot in the hierarchy window.
  1011.  
  1012.         25.Click COPY in edit panel - wait a few seconds.
  1013.  
  1014.         26.Click ZOOM OUT in edit panel.
  1015.  
  1016.         27.Place cursor in a space below teapot.
  1017.  
  1018.         28.Click PASTE in edit panel -  wait  a  few seconds - you now
  1019. have two teapots.
  1020.  
  1021.         29.Select PREFERENCES.LIGHTSOURCE to on.
  1022.  
  1023.         30.Select 2D in edit panel (tri-view mode).
  1024.  
  1025.         31.Click at top-right of top-left  window and then at top-left
  1026. of top-right window.  Then click MOVE  LIGHTSOURCE in edit panel.  The
  1027. lightsource should now be  placed  at  the  top-right  of the scene in
  1028. front of the objects.
  1029.  
  1030.         32.Select 2D in edit panel (3D mode).
  1031.  
  1032.         33.Select PREFERENCES.VIEWMODE.LIT_FLAT  -  after  a  wait the
  1033. scene will now be drawn in lightsourced grey-scales.
  1034.  
  1035.         34.Select PREFERENCES.EDGES and scene will  be redrawn with no
  1036. edges.
  1037.  
  1038.         35.To save this project select PROJECT.FILES.
  1039.  
  1040.         36.Set  directory  to  where  you  want  to  save  it.   Enter
  1041. "Teapots" or something into "File:" and select SAVE.
  1042.  
  1043.  
  1044. 8.5 GLOSSARY
  1045.  
  1046.  
  1047. ANIMATION
  1048.  
  1049. The fourth dimension - movement through time.
  1050.  
  1051. CHILD OBJECT
  1052.  
  1053. An object below grouping object in hierarchy.
  1054.  
  1055. CHIP MEMORY
  1056.  
  1057. Memory in an Amiga computer  that  is  used  for graphics and samples.
  1058. This is memory available to the custom chips.
  1059.  
  1060. CLOSE GADGET
  1061.  
  1062. Square icon in top left of windows used for closing the window.
  1063.  
  1064. DEPTH GADGET
  1065.  
  1066. A gadget in the upper right corner  of  a window that moves the window
  1067. either to the front of the screen  or  behind all other windows on the
  1068. screen.
  1069.  
  1070. DOUBLE CLICK
  1071.  
  1072. Rapidly pressing and releasing the mouse button twice.
  1073.  
  1074. DRAG BAR
  1075.  
  1076. The bar at the  top  of  a  window  between  the  close gadget and the
  1077. size/depth gadgets.  Holding the left mouse button on this bar enables
  1078. the moving (dragging) of the window.
  1079.  
  1080. EDGE
  1081.  
  1082. Line joining two vertices.
  1083.  
  1084. FACE/FACET
  1085.  
  1086. A list of edges which form the borders of a plane.
  1087.  
  1088. FAST MEMORY
  1089.  
  1090. Memory in an Amiga computer that is  for  CPU use only, not for use by
  1091. the custom chips.  Access to this memory is faster than to chip memory
  1092. as there is no DMA, hence its name.
  1093.  
  1094. FLAT MODE
  1095.  
  1096. A display mode of  three-dimensional  objects  that sorts the polygons
  1097. into decreasing distance from  the  viewer  and  draws filled polygons
  1098. farther away before nearer ones to give a solid view.
  1099.  
  1100. FLICKER FIXER
  1101.  
  1102. A device that can be fitted  to  an  Amiga to give a steady interlaced
  1103. picture.  The Amiga 3000 is fitted with one as standard.
  1104.  
  1105. GOURAUD MODE
  1106.  
  1107. A display mode  of  three-dimensional  objects  that  smooths  out the
  1108. borders between polygons to give a less faceted look.
  1109.  
  1110. HAM
  1111.  
  1112. Stands for Hold And Modify.  A  fudged  screen  mode of the Amiga that
  1113. allows 4096 colours to be used  simultaneously on a screen.  HAM works
  1114. by using the palette value of a  pixel to modify either the red, green
  1115. or blue attributes of the pixel to  the  left; thus this can result in
  1116. "bands" appearing 1 or 2 pixels wide between different colours.
  1117.  
  1118. HIERARCHY
  1119.  
  1120. Tree structure with objects arranged as children of parents.
  1121.  
  1122. ICON
  1123.  
  1124. A small picture that when clicked on performs a specific function.
  1125.  
  1126. INTERLACE
  1127.  
  1128. A  technique  for  refreshing   the   display  screen  by  alternately
  1129. displaying odd and even lines.
  1130.  
  1131. KICKSTART
  1132.  
  1133. The basic routines that comprise the Amiga's operating system.
  1134.  
  1135. LIT_FLAT MODE
  1136.  
  1137. A display  mode  of  three-dimensional  objects  that  uses  the  FLAT
  1138. technique plus a lightsource to light individual polygons.
  1139.  
  1140. MOUSE
  1141.  
  1142. The small, palm-sized  device  used  to  control  the  pointer  and to
  1143. communicate with your Amiga.   It  contains  two buttons for selecting
  1144. icons, dragging icons, windows or screens, and displaying menus.
  1145.  
  1146. PALETTE
  1147.  
  1148. List of available screen colours.  Each colour can be one of 4096.
  1149.  
  1150. PARENT OBJECT
  1151.  
  1152. An object above child object in hierarchy.
  1153.  
  1154. PERSPECTIVE
  1155.  
  1156. Effect of the human eye  when  viewing a three-dimensional scene which
  1157. means that objects far away look smaller than nearer ones.
  1158.  
  1159. PING-PONG
  1160.  
  1161. An animation playback mode that plays  all  frames forward to the last
  1162. then plays them  backwards  to  the  first  then  repeats  this  in an
  1163. infinite loop.
  1164.  
  1165. POLYGON
  1166.  
  1167. A drawing primitive.  A polygon  is  a  list of joined straight lines,
  1168. with the end of the last line joined to the start of the first.
  1169.  
  1170. PRIMITIVE
  1171.  
  1172. A three-dimensional object that can  be mathematically calculated from
  1173. parameters.
  1174.  
  1175. PROJECT
  1176.  
  1177. In Model4D a project  is  an  animation  with  all  its frames, object
  1178. hierarchies, the defined palette and user orientation.
  1179.  
  1180. SHADOWS
  1181.  
  1182. Parts of objects that are hidden from  the light source by other parts
  1183. appear darker; this option is available  in  Model4D and can take some
  1184. time to calculate.
  1185.  
  1186. SIBLING OBJECT
  1187.  
  1188. An object with same parent as another object.
  1189.  
  1190. TOGGLE
  1191.  
  1192. A feature which operates like a  switch.   When a toggle is clicked on
  1193. its state will change, and remain changed until it is clicked again.
  1194.  
  1195. TRI-VIEW
  1196.  
  1197. A way of displaying  a  three-dimensional  scene  on a two-dimensional
  1198. display device that uses a  front,  side  and  top  view of the scene,
  1199. hence tri-view.
  1200.  
  1201. VECTOR
  1202.  
  1203. A line joining two vertices  with  a  direction  implied by the vertex
  1204. order.
  1205.  
  1206. VERTEX
  1207.  
  1208. A three-dimensional coordinate.
  1209.  
  1210. WIREFRAME MODE
  1211.  
  1212. A simple display  mode  of  three-dimensional  objects  that draws the
  1213. outline of every polygon in the object.
  1214.  
  1215. WINDOW
  1216.  
  1217. A framed area of the  screen  that  can  be  moved and resized with no
  1218. affect to the rest of the screen.
  1219.  
  1220. WORKBENCH
  1221.  
  1222. The Amiga's icon-based (graphical) user-interface software.
  1223.  
  1224.  
  1225. 8.6 FILE FORMAT
  1226.  
  1227. Header
  1228. Colour palette
  1229.   Red, Green, Blue [16 entries]
  1230. Frame,...0
  1231.   Frame hierarchy toggle [1=object information follows]
  1232.   Viewer coordinates
  1233.     x,y,z
  1234.   Viewer angles
  1235.     xa,ya,za
  1236.   Lightsource coordinates
  1237.     x,y,z
  1238.   Vertices,...0
  1239.     vertex_id, x, y, z
  1240.   Edges,...0
  1241.     edge_id, vertex_id, vertex_id
  1242.   Sibling/Child/Parent Objects,...0
  1243.     Translation
  1244.     Rotation
  1245.     Scaling
  1246.     Material
  1247.     Polygons,...0
  1248.       type[1=curve/2=flat], polygon_id, edge_id,edge_id,...,0
  1249.